# 3、Set集合
# 由一系列不重复的不可变类型变量组成的可变散列容器。
# 相当于只有键没有值的字典(键则是集合的数据)。
#
# 创建集合使用 {}或 set()， 但是如果要创建空集合只能使用 set()，因为 {}用来创建空字典。
# 特点：
# 1. 集合中不能出现重复的数据，自动去掉重复数据；
# 2. 集合数据看起来是是无序的，不支持下标,实际上set集合底层逻辑是根据哈希算法排序的

set1 = set()
set1 = {'abcefg', 100, 78, 3.14}
print(len(set1))

# 添加
set1.add(99)
set1.add(99)
set1.add('hello')
print(set1)

# 删除
set1.remove('hello')
print(set1)

# for可以遍历
# set2 = {'hello', (100, 200), [300, 400]} # [300,400] 是个 'list' 是不可变的.set集合中不可以有list
# print(set2)  # TypeError: unhashable type: 'list'
for item in set1:
    print(item)

